import ctypes
import time
import pywifi
from pywifi import const, Profile
import tkinter as tk

from post_njdx import post_url


def connect_wifi(ssid):
    # 创建一个 PyWiFi 对象
    wifi = pywifi.PyWiFi()
    # 获取无线网卡接口
    iface = wifi.interfaces()[0]
    # 断开当前连接
    iface.disconnect()
    # 创建一个 WiFi 网络配置文件
    profile = Profile()
    # 设置 WiFi 的 ssid 名称
    profile.ssid = ssid
    # 删除所有网络配置文件
    iface.remove_all_network_profiles()
    # 添加新的网络配置文件
    tmp_profile = iface.add_network_profile(profile)
    # 连接到指定的 WiFi 热点
    iface.connect(tmp_profile)

    # 创建一个 Tkinter 窗口
    window = tk.Tk()
    window.title('提示')
    window.geometry('200x100')
    # 创建一个标签用于显示倒计时
    label = tk.Label(window, text='还有10秒，请耐心等待')
    label.pack()

    # 更新倒计时
    for i in reversed(range(1, 4)):
        label['text'] = '还有{0}秒，请耐心等待'.format(i)
        window.update()
        time.sleep(1)

    window.destroy()

    # 检查连接状态
    if iface.status() == const.IFACE_CONNECTED:
        ctypes.windll.user32.MessageBoxW(0, "已成功连接到 WiFi！", "提示", 0)
        return True
    else:
        ctypes.windll.user32.MessageBoxW(0, "连接 WiFi 失败！", "提示", 0)
        return False



